/***** -----------------   General CSS  ---------------------- *****/

/* Typography */

html {
    background: #17181a;
}
body {
    font-family: 'Open Sans', sans-serif;
    color: #f1f1f1;
    font-weight: 300;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    background: none;
}

a {
    color: #444;
}
a:hover {
    color: #333;
}
h1,
h2,
h3 {
    font-family: 'Open Sans', sans-serif;
    text-transform: uppercase;
    font-weight: 300;
}
h4,
h5,
h6 {
    font-family: 'Open Sans', sans-serif;
    text-transform: uppercase;
    font-weight: 300;
}
h1 {
    font-size: 36px;
}
h2 {
    font-size: 30px;
}
h3 {
    margin: 0;
    padding: 0;
    font-weight: normal;
    font-size: 24px;
}
h4 {
    font-size: 12px;
}
h3 a {
    font-size: 24px;
    text-decoration: none;
    margin: 0;
    padding: 0;
}
ul,
li {
    list-style: none;
    margin: 0;
    padding: 0;
}
p {
    font-size: 20px;
    margin: 40px 0;
}
p a {
    color: #444;
    text-decoration: none;
    font-size: 20px;
}
p a:hover {
    text-decoration: none;
}
/* bootstrap overrides */

.input-group-addon {
    border-radius: 0;
}
.table > tbody > tr > td {
    border: 0;
    padding: 10px;
}
.table > tbody > tr > td.active {
    background: transparent;
}
.table > thead > tr > th {
    border: 0;
}
.modal-content {
    background-color: #3C3C3C;
    border-radius: 0;
}
.modal-header, .modal-footer {
    border-color: #595959;
}
.modal-content input[type=text] {
    background: #595959;
    color: white;
}
/* Homepage Tiles */

@media (min-width: 770px) {
    #tiles {
        left: 5%;
    }
}
.tile {
    width: 185px;
    height: 185px;
    float: left;
    margin: 5px;
    list-style: none;
    /*opacity: 0;*/
    display: list-item;
    padding: 0;
    position: relative;
}
@media (max-width: 1199px) {
    .tile {
        width: 184px;
        height: 184px;
    }
}
.tile {
    background: transparent;
}
.tile > a {
    width: 100%;
    height: 100%;
    display: block;
    padding: 0;
}
.tile > a > span {
    display: block;
    float: left;
    color: #fff;
    bottom: 0;
    position: relative;
    font-size: 40px;
    padding-top: 170px;
}

@media (max-width: 1200px) {
    .tile > a > span {
        display: none;
    }
}

@media (min-width: 1200px) and (max-width: 1400px) {
    .tile > a > span {
        font-size: 32px;
    }
}
.tile .info {
    font-size: 14px;
    float: left;
    width: 100%;
}
.tile[selected],
.tile:focus,
.tile:hover{
    -webkit-transform: scale(1.02);
}
#tiles {
    width: 100%;
    height: 100%;
    position: relative;
    margin: 20px auto 0;
    overflow: hidden;
}
.tile img {
    width: 100%;
    height: 100%;
}

.tile:hover {
    cursor: pointer;
}
.tile.grow,
.tile.plugin.grow {
    position: fixed;
    top: 0;
    left: 0;
    margin: 0;
    width: 100% !important;
    height: 100% !important;
    z-index: 9;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    -webkit-user-select: none;
}
.upgrade-right {
    float: right;
    margin-right: 200px;
}
.upgrade {
    margin: 0;
    padding: 10px 0;
    color: #fff;
    width: 250px;
    text-align: center;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    background: #3598DC;
}
/* Date and Time */

#dateandtime {
    position: relative;
    right: 0;
    float: right;
    height: 75px;
    padding: 20px 40px;
    background: #26272b;
}
#dateandtime .date,
#dateandtime .time {
    text-align: right;
    font-weight: 300;
    font-size: 25px;
    font-family: 'Open Sans', sans-serif;
    color:#7B7D83;
}

@media (max-width: 1255px) {
    #dateandtime .date,
    #dateandtime .time {
        font-size: 18px;
    }
}

#dateandtime .time {margin-right:20px;}

/* Content */

.boxed {
    background: #333;
    padding: 0;
    color: #fff;
    border-radius: 0;
    position: relative;
}
.focused {
    background-color: #EFEFEF;
    cursor: pointer;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
}


.homepage header{height:75px;}


header {
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
    position: relative;
    float: left;
    background: #232428;
    overflow: hidden;
    border-bottom: 0;
    box-shadow: none;
}
.homepage {
    overflow: hidden;
}
header #search {
    position: absolute;
    right: 0;
    top: 0;
    height: 60px !important;
    z-index: 999;
}
header #filter {
    /*Disable filter temorarily untill better implemented */
    display: none;
}
a.backlink,
a.backlink:hover {
    display: inline-block;
    float: left;
    text-decoration: none;
    margin-right: 30px;
    width: 32px;
    height: 32px;
    font-family: 'Metrize-Icons';
    -webkit-font-smoothing: antialiased;
    font-size: 40px;
    color: #fff;
}
.homepage h1 {
    text-transform: none;
    font-weight: 300;
    margin-top: 13px;
}
header {
    z-index: 5;
}
header .logo {
    float: left;
    height: 50px;
    margin: 11px 10px 0 0;
}
header h1 {
    max-width: 85%;
    margin: 7px 0 0 0;
    display: inline-block;
    color: #f5f5f5;
    font-size: 30px;
    padding: 6px 0 0;
}
#content {
    width: 800px;
    padding: 0;
    margin: 0 0 0 60px;
}
/* Form elements */

label,
.label {
    font-size: 16px;
    font-family: 'Open Sans', sans-serif;
    color: #ccc;
}
.btn {
    float: left;
    display: block;
    font-size: 16px;
    font-weight: 400;
    color: #fff;
    text-decoration: none;
    text-align: center;
    padding: 10px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    cursor: pointer;
    border: none;
    background: #fb8521;
    border-radius: 0;
}
.btn:hover {
    color: #fff;
    background: #f5994c;
}
.btn:active {
    top: 2px;
}
.btn-alternative {
    background: #0074a2;
}
.btn-alternative:hover,
.btn-alternative:active {
    background: #1c8fbd;
}
.btn-btn-disabled,
.btn-btn-disabled:hover,
.btn-btn-disabled:active {
    background-color: #ddd;
    color: #fff;
    top: 0;
}
em.error {
    display: block !important;
    float: left;
    margin: 5px 0 0 5px;
    color: red;
    font-style: normal;
    font-size: 13px;
}
input[type=text],
input[type=password],
select,
textarea {
    margin: 0;
    padding: 0.85em 1.2em;
    font-size: 18px;
    outline: none;
    color:#f1f1f1;
    border-radius: 0;
    border:0;
    background:transparent;
    border-bottom:2px solid #4D4D4D;
    max-width: 80%;
    color:#f1f1f1;
    height: 60px;
    line-height: 60px;
}
select option{color:#333; font-size:18px;}

.input-group-addon{border:0; background:#222429; border-bottom:2px solid #4D4D4D;}

.input-group-addon i.icon{opacity:1;}

label,
.label {
    padding-top: 20px;
}
#search::-webkit-input-placeholder::before {
    font-family: Icons;
    content: '\f002  ';
    color: #ddd
}
#search:-moz-placeholder::before {
    font-family: Icons;
    content: '\f002  ';
    color: #ddd
}
#search:-ms-input-placeholder::before {
    font-family: Icons;
    content: '\f002  ';
    color: #ddd
}
#search:-moz-placeholder::before {
    font-family: Icons;
    content: '\f002  ';
    color: #ddd
}
#filter::-webkit-input-placeholder::before {
    font-family: Icons;
    content: '\f0c9  ';
    color: #ddd
}
#filter:-moz-placeholder::before {
    font-family: Icons;
    content: '\f0c9  ';
    color: #ddd
}
#filter:-ms-input-placeholder::before {
    font-family: Icons;
    content: '\f0c9  ';
    color: #ddd
}
#filter:-moz-placeholder::before {
    font-family: Icons;
    content: '\f0c9  ';
    color: #ddd
}
/* SweetAlert override */

.sweet-alert {
    background: #3C3C3C;
    border-radius: 0;
}
.sweet-alert p {
    color: #c6c6c6;
    font-weight: bold;
}
.sweet-alert button {
    background-color: #fb8521 !important;
    border-radius: 0;
}
.sweet-alert .icon.error {
    border-color: #ef5654;
}
.sweet-alert .icon.error .line {
    background-color: #ef5654;
}
/* Player */

#player {
    position: absolute;
    bottom: 0;
    left: 0;
}
/* settings override */

.table>tbody>tr:nth-child(odd){
    background: #151618 !important;
    padding: 20px;
}

.configurable-options h2{margin: 20px 0 20px 0px !important;}
.access-table h2{margin: 20px 0 20px -15px !important;}


/***** -----------------   ANIMATIONS  ---------------------- *****/

.glinein {
    -webkit-animation: glide-in 0.5s;
    animation: glide-in 0.5s;
}
.fadein {
    -webkit-animation: fade-in 1s;
    animation: fade-in 1s;
}
.fadeinslow {
    -webkit-animation: fade-in 2s;
    animation: fade-in 2s;
}
.fadeout {
    -webkit-animation: fade-out 2s;
    animation: fade-out 2s;
}
.flipin {
    -webkit-animation: flip-in 1s;
    animation: flip-in 1s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}
.flipin:nth-of-type(2n+1) {
    -webkit-animation-delay: 0.1s;
    animation-delay: 0.1s;
}
.flipin:nth-of-type(2n) {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
}
@-webkit-keyframes flip-in {
    0% {
        opacity: 0.0;
        -webkit-transform: perspective(600px) rotateY(50deg);
        -moz-transform: perspective(600px) rotateY(50deg);
        -ms-transform: perspective(600px) rotateY(50deg);
        transform: perspective(600px) rotateY(50deg);
        -webkit-transform-origin: 100% 20%;
        -moz-transform-origin: 100% 20%;
        -ms-transform-origin: 100% 20%;
        transform-origin: 100% 20%;
    }
    100% {
        opacity: 1.0;
        -webkit-transform: perspective(0px) rotateY(0deg);
        -moz-transform: perspective(0px) rotateY(0deg);
        -ms-transform: perspective(0px) rotateY(0deg);
        transform: perspective(0px) rotateY(0deg);
        -webkit-transform-origin: 100% 100%;
        -moz-transform-origin: 100% 100%;
        -ms-transform-origin: 100% 100%;
        transform-origin: 100% 100%;
    }
}
@keyframes flip-in {
    0% {
        opacity: 0.0;
        -ms-transform: perspective(600px) rotateY(50deg);
        transform: perspective(600px) rotateY(50deg);
        transform-origin: 100% 20%;
        -ms-transform-origin: 100% 20%;
    }
    100% {
        opacity: 1.0;
        -ms-transform: perspective(0px) rotateY(0deg);
        transform: perspective(0px) rotateY(0deg);
        transform-origin: 100% 100%;
        -ms-transform-origin: 100% 100%;
    }
}
@-webkit-keyframes fade-in {
    0% {
        opacity: 0.0;
        -webkit-transform: translate3d(0, 0, 0);
    }
    100% {
        opacity: 1.0;
        -webkit-transform: translate3d(0, 0, 0);
    }
}
@keyframes fade-in {
    0% {
        opacity: 0.0;
        transform: translate3d(0, 0, 0);
    }
    100% {
        opacity: 1.0;
        transform: translate3d(0, 0, 0);
    }
}
@-webkit-keyframes glide-in {
    0% {
        margin-left: -30px;
        opacity: 0.0;
        -webkit-transform: translate3d(0, 0, 0);
    }
    100% {
        margin-left: 0;
        opacity: 1.0;
        -webkit-transform: translate3d(0, 0, 0);
    }
}
@keyframes glide-in {
    0% {
        margin-left: -30px;
        opacity: 0.0;
        transform: translate3d(0, 0, 0);
    }
    100% {
        margin-left: 0;
        opacity: 1.0;
        transform: translate3d(0, 0, 0);
    }
}
@-webkit-keyframes fade-out {
    0% {
        opacity: 1.0;
        -webkit-transform: translate3d(0, 0, 0);
    }
    100% {
        opacity: 0.0;
        -webkit-transform: translate3d(0, 0, 0);
    }
}
@keyframes fade-out {
    0% {
        opacity: 1.0;
        transform: translate3d(0, 0, 0);
    }
    100% {
        opacity: 0.0;
        transform: translate3d(0, 0, 0);
    }
}
@media only screen and (min-width: 320px) and (max-width: 767px) {
    .tile {
        width: 177px;
        height: 177px;
    }
    .tile > a > span {
        display: none !important;
    }
    #tiles,
    .tile {
        margin: 0;
        -webkit-transition: none;
        transition: none;
    }
    .loading {
        left: 20px;
    }
    /*hack to get % width squares) -.- */
    .tile > a {
        position: absolute;
        top: 0;
        left: 0;
    }
}
@media only screen and (min-width: 320px) and (max-width: 479px) {
    /*more hack to get % width squares) */
    .tile {
        width: 50%;
        height: 0;
        padding: 25%;
        position: relative;
    }
}
@media only screen and (min-width: 480px) and (max-width: 679px) {
    /*more hack to get % width squares) */
    .tile {
        width: 33.33333%;
        height: 0;
        padding: 16.66666%;
        position: relative;
    }
}
@media only screen and (min-width: 680px) and (max-width: 767px) {
    /*more hack to get % width squares) */
    .tile {
        width: 25%;
        height: 0;
        padding: 12.5%;
        position: relative;
    }
}
@media only screen
and (min-width: 360px)
and (orientation: portrait)
and (-webkit-min-device-pixel-ratio: 3.0) {
    .tile {
        width: 180px;
        height: 175px;
    }
    .loading {
        left: 20px;
    }
}
@media only screen and (min-width: 771px) {
    .homepage header .container-fluid{padding:0 100px;}
    .tile img {
        width: 30%;
        padding-top: 40px;
        padding-left: 10px;
        height: auto;
        float: left;
    }
    .tile.grow img {
        height: 58%;
        opacity: 1;
    }
    .tile {
        width: 18.5%;;
        height: 18em;
        background: #484c52;
    }
    .tile span {
        text-transform: capitalize;
    }
    .tile.movies {
        width: 30%;
        background: #32afc5;
    }
    .tile.tv {
        width: 49%;
        background: #9966e9;
    }
    .tile.plugins {
        background: #951ce9;
    }
    .tile.music {
        background: #afcc12;
    }
    .tile.settings {
        background: #e9b11c;
    }
    .tile.youtube {
        background: #ffffff;
    }
    .tile.youtube span {
        color: #333;
    }
    .tile.weather {
        background: #f86049;
    }
    .tile.remote {
        background: #f86c3a;
        width:15%;
    }

    .tile.remote img{
        width: 50%;
        position: absolute;
        top: -30px;
        left: 0;
    }

    .tile.remote.grow img,
    .tile.remote.grow canvas{
        display:none!important;
    }

    .tile.remote span {
        margin-left: 8px;
    }
}

@media (min-width:770px) and (max-width: 1200px) {
    .tile img{
        width:50%;
        margin: 0 auto;
        float:none;
        position: relative;
    }
}

@media (max-width:1200px) {
    .tile.remote{
        display:none;
    }
}
